[vsftpd] Wirtualne konta ftp

Kategoria: FAQ, etykiety: virtualhost, vsftpd

Dodany: 2010-06-27 17:08 (zmodyfikowany: 2010-06-30 12:32)
Przez: jezoo

Wyświetleń: 11923

W tym odcinku podzielę się jak stworzyć konta wirtualne oparte na bazie danych PostgreSQL.

Na początek musimy zainstalować sobie pakiety: postgresql-server, vsftpd oraz pam

Nastepnie tworzymy usera i tabele, nadajemy uprawnienia do czytania i wstawiania do tabeli (BiExi opisała jak obsługiwać PostgreSQL i jak tworzyć konta użytkowników i bazy danych):

CREATE TABLE vsftpd (
    id SERIAL NOT NULL,
    login character varying(30) NOT NULL,
    password character varying(100) NOT NULL,
    basedir character varying(128) NOT NULL,
    expired boolean NOT NULL default false
);

Wstawiamy przykladowe dane:

INSERT INTO vsftpd(login,password,basedir) VALUES('vuser',md5('tajne haslo'),'/katalog/wirtualnego/usera');

Teraz konfigurujemy serwis PAM. Wchodzimy do katalogu PAM (/etc/pam.d/) i tworzymy plik PAM dla vsftpd, czyli ee vsftpd i wpisujemy:

auth    required    pam_pgsql.so    config_file=/etc/pam_pgsql_vsftpd.conf
account    required    pam_pgsql.so    config_file=/etc/pam_pgsql_vsftpd.conf
password    required    pam_pgsql.so

tworzymy plik plik konfiguracyjny w /etc ee pam_pgsql_vsftpd.conf i wpisujemy:

debug
database=vsftpd
port=5433
user=vsftpd
password=tajneHaslo
table=vsftpd
user_column=login
pwd_column=password
expired_column=expired
pw_type=md5

Na koniec konfigurujemy vsftpd:

listen=YES
anonymous_enable=NO
local_enable=YES
virtual_use_local_privs=YES
write_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/home/vhosts/empty
pam_service_name=vsftpd
guest_enable=YES
user_sub_token=$USER
local_root=/home/vhosts/$USER
chroot_local_user=YES
hide_ids=YES
ftpd_banner=Welcome to FTP server
file_open_mode=0770
local_umask=0000
anon_mkdir_write_enable=NO
guest_username=vsftpd
background=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
pasv_enable=YES
pasv_max_port=51000
pasv_min_port=50000
port_enable=YES

i na koniec restartujemy vsftpd
Dodatkowa informacja
Katalogi kont wirtualnych należy stworzyć ręcznie i zmienić właściciela na vsftpd.

OSnews Wykop Blip Flaker Kciuk Śledzik Facebook Identi.ca Twitter del.icio.us Google Bookmarks